package com.hq.zb.model;

import com.alibaba.fastjson.annotation.JSONField;
import com.alibaba.fastjson.serializer.ToStringSerializer;
import com.baomidou.mybatisplus.activerecord.Model;
import com.baomidou.mybatisplus.annotations.TableField;
import com.baomidou.mybatisplus.annotations.TableId;
import com.baomidou.mybatisplus.annotations.TableName;
import com.baomidou.mybatisplus.enums.IdType;
import lombok.Data;

import java.io.Serializable;
import java.util.Date;

/**
 * 流水哈规则行表
 * @author huanghanrui
 * @since 2022-03-08
 */
@Data
@TableName("sys_code_rules_line")
public class CodeRulesLine extends BaseModel<CodeRulesLine> {

    private static final long serialVersionUID = 1L;

    @TableId(value = "line_id", type = IdType.AUTO)
    private Integer lineId;
    /**
     * 编码头id
     */
    @TableField("rule_code")
    private String ruleCode;
    /**
     * 编码段类型
     */
    @TableField("filed_type")
    private String filedType;
    /**
     * 编码段值
     */
    @TableField("filed_value")
    private String filedValue;
    /**
     * 序号
     */
    @TableField("field_sequence")
    private Integer fieldSequence;
    /**
     * 日期掩码
     */
    @TableField("date_mask")
    private String dateMask;
    /**
     * 序列长度
     */
    @TableField("seq_length")
    private Integer seqLength;
    /**
     * 序列开始值
     */
    @TableField("start_value")
    private Integer startValue;
    /**
     * 序列号段当前值
     */
    @TableField("current_value")
    private Integer currentValue;
    /**
     * 重置频率
     */
    @TableField("reset_frequency")
    private String resetFrequency;
    /**
     * 上次重置日期
     */
    @TableField("reset_date")
    private Date resetDate;
    /**
     * 更新数据库步长
     */
    @TableField("step_number")
    private Integer stepNumber;

    @Override
    protected Serializable pkVal() {
        return this.lineId;
    }
}
